#include "HIDReportMap.h"
#include <cstddef>

// Combo Report Map: 鼠标 + 键盘 + 多媒体
const uint8_t reportMap[] = {
  // Mouse (Report ID 1)
  0x05, 0x01, 0x09, 0x02, 0xA1, 0x01, 0x85, 0x01, 0x09, 0x01, 0xA1, 0x00,
  0x05, 0x09, 0x19, 0x01, 0x29, 0x05, 0x15, 0x00, 0x25, 0x01,
  0x95, 0x05, 0x75, 0x01, 0x81, 0x02, 0x95, 0x01, 0x75, 0x03, 0x81, 0x01,
  0x05, 0x01, 0x09, 0x30, 0x09, 0x31, 0x09, 0x38,
  0x15, 0x81, 0x25, 0x7F, 0x75, 0x08, 0x95, 0x03, 0x81, 0x06,
  0xC0, 0xC0,

  // Keyboard (Report ID 2)
  0x05, 0x01, 0x09, 0x06, 0xA1, 0x01, 0x85, 0x02,
  0x05, 0x07, 0x19, 0xE0, 0x29, 0xE7, 0x15, 0x00, 0x25, 0x01,
  0x75, 0x01, 0x95, 0x08, 0x81, 0x02, 0x95, 0x01, 0x75, 0x08, 0x81, 0x01,
  0x95, 0x05, 0x75, 0x01, 0x05, 0x08, 0x19, 0x01, 0x29, 0x05,
  0x91, 0x02, 0x95, 0x01, 0x75, 0x03, 0x91, 0x01,
  0x95, 0x06, 0x75, 0x08, 0x15, 0x00, 0x25, 0x65,
  0x05, 0x07, 0x19, 0x00, 0x29, 0x65, 0x81, 0x00, 0xC0,

  // Media Keys (Report ID 3)
  0x05, 0x0C, 0x09, 0x01, 0xA1, 0x01, 0x85, 0x03,
  0x15, 0x00, 0x25, 0x01,
  0x09, 0xE9, 0x09, 0xEA, 0x09, 0xE2,
  0x75, 0x01, 0x95, 0x03, 0x81, 0x06,
  0x95, 0x05, 0x81, 0x03,
  0xC0
};

const size_t reportMapSize = sizeof(reportMap);
